Database reference guide

HOME

Links limits and constraints

This section provides an overview of the limits that need to be considered when working with links in Engine.

It is only possible to have one link between the same two tables.

There is no practical limit on the number of links that can be present in the system or on the number of links for any one table.

Links are created as EQUI-JOINS. NSQL queries return INNER JOINS automatically.

Engine does not support FULLOUTER JOINS as query results and domains must always be owned by a single table.

It is possible to create LEFT and RIGHT OUTER JOINS by domain manipulation.

Engine does not provide direct support for SELF JOINS. To execute a SELF JOIN, an intermediate table must first be created.

For more details on JOINS, see Query Rules.

Size of Link

  • The size of a link depends on the following:
  • The number of records in the foreign table - the more records, the larger the link.
  • The ratio of records in foreign table to records in primary table - if the number of records in the foreign table is much larger than the number of records in the primary table then the size of the link will be related to how grouped and then how ordered the data is in the foreign table.
  • How grouped the data is in the foreign table - if the data in the foreign table is grouped by link key, then the size of the link file will be considerably reduced. The more grouped the data, the smaller the DCC link file.
  • The Sequence of the data in the foreign table - if the sequence of data in the foreign table is the same as that in the primary table then the link file will be smaller. Note that grouping of foreign data is more important that the order of the foreign data.

Time needed to create Link

The time taken to create a link depends on whether or not the link can be created in one pass and the characteristics of the link keys.

If the link can be created entirely in memory then the link will be created optimally in one pass.

If the storage requirements exceed the available memory then multi-pass links will be used and the link creation time will be noticeably increased.

Link Keys

Data Type Valid as Link Key? Comment
Integer YES Most efficient data type to use as a link key
Real YES REAL keys will be faster than TEXT keys if the key is > 7 bytes. The REAL field must have a PRECISION of 0.
Text YES Smaller the text field, the faster it will be to build the link. Size of key does not affect resolution time.
Unicode YES  
Date YES  
Time YES  
DateTime NO  

Time needed to Resolve Link

The time to resolve the link is dependent on the size of the link file. The smaller the link file, the faster it will be to resolve the link.

Engine creates multiple files when it builds a link but it is the DCC file that affects resolution time. The time taken to resolve a link is effectively the time taken to load the DCC file into memory.

If the DCC file is much smaller than the LKF file, the link is optimal.

Link Traversal

The maximum number of links that can be crossed in any Engine operation is three. For details of the exact types of links that can be crossed for different links see the sections on Crosstabs, Domains, Aggregates and Queries.

  Online & Instructor-Led Courses | Training Videos | Webinar Recordings
© Alterian. All Rights Reserved. | Privacy Policy | Legal Notice